Methods, systems, and media for indicating viewership of a video

ABSTRACT

Methods, systems, and media for indicating viewership of a video are provided. In some embodiments, the method comprises: identifying a video; identifying a first group of users; determining an affinity score for each user with the identified video; receiving a request to present a page that includes a representation of the video; identifying a second group of users connected to the first user associated with the user device; determining a viewership status of each user in the second group of users corresponding to the video; identifying a subset of users in the second group of users based at least in part on the viewership status; and causing groups of indicators to be presented on the user device, wherein each indicator in the groups of indicators represents the viewership status of the user, and wherein the indicators are presented on the requested page in connection with the representation of the video.

TECHNICAL FIELD

The disclosed subject matter relates to methods, systems, and media forindicating viewership of a video.

BACKGROUND

Many users browse video sharing sites to find and watch a video. Forexample, a user may browse a listing of available videos, and thelisting may include the title of the video, a genre of the video, andother information. In some instances, it can be difficult for the userto determine whether they are likely to enjoy the video. However,learning that friends of the user have watched the video or liked thevideo may assist the user in deciding that they are likely to enjoy thevideo as well.

Accordingly, it is desirable to provide methods, systems, and media forindicating viewership of a video.

SUMMARY

Methods, systems, and media for indicating viewership of a video areprovided. In accordance with some embodiments of the disclosed subjectmatter, a method for indicating viewership of a video is provided, themethod comprising: identifying a video based at least in part on aviewing history of a first user associated with a user device;identifying a first group of users; determining, for each user in thefirst group of users, an affinity score for each user with theidentified video; receiving a request to present a page that includes arepresentation of the video; in response to receiving the request,identifying a second group of users connected to the first userassociated with the user device, wherein the second group of users is asubset of the first group of users; determining a viewership status ofeach user in the second group of users corresponding to the video,wherein the viewership status corresponds to one of a plurality ofcategories; identifying a subset of users in the second group of usersbased at least in part on the viewership status; and causing a pluralityof groups of indicators corresponding to the plurality of categories tobe presented on the user device, wherein each indicator in the group ofindicators represents the viewership status of the user and correspondsto a user in the identified subset of users, and wherein the pluralityof groups of indicators is presented on the requested page in connectionwith the representation of the video.

In accordance with some embodiments of the disclosed subject matter, asystem for indicating viewership of a video is provided, the systemcomprising: a hardware processor that is programmed to: identify a videobased at least in part on a viewing history of a first user associatedwith a user device; identify a first group of users; determine, for eachuser in the first group of users, an affinity score for each user withthe identified video; receive a request to present a page that includesa representation of the video; in response to receiving the request,identify a second group of users connected to the first user associatedwith the user device, wherein the second group of users is a subset ofthe first group of users; determine a viewership status of each user inthe second group of users corresponding to the video, wherein theviewership status corresponds to one of a plurality of categories;identify a subset of users in the second group of users based at leastin part on the viewership status; and cause a plurality of groups ofindicators corresponding to the plurality of categories to be presentedon the user device, wherein each indicator in the group of indicatorsrepresents the viewership status of the user and corresponds to a userin the identified subset of users, and wherein the plurality of groupsof indicators is presented on the requested page in connection with therepresentation of the video.

In accordance with some embodiments of the disclosed subject matter,non-transitory computer-readable media containing computer executableinstructions that, when executed by a processor, cause the processor toperform a method for indicating viewership of a video. The methodcomprises: identifying a video based at least in part on a viewinghistory of a first user associated with a user device; identifying afirst group of users; determining, for each user in the first group ofusers, an affinity score for each user with the identified video;receiving a request to present a page that includes a representation ofthe video; in response to receiving the request, identifying a secondgroup of users connected to the first user associated with the userdevice, wherein the second group of users is a subset of the first groupof users; determining a viewership status of each user in the secondgroup of users corresponding to the video, wherein the viewership statuscorresponds to one of a plurality of categories; identifying a subset ofusers in the second group of users based at least in part on theviewership status; and causing a plurality of groups of indicatorscorresponding to the plurality of categories to be presented on the userdevice, wherein each indicator in the group of indicators represents theviewership status of the user and corresponds to a user in theidentified subset of users, and wherein the plurality of groups ofindicators is presented on the requested page in connection with therepresentation of the video.

In accordance with some embodiments of the disclosed subject matter, asystem for indicating viewership of a video is provided, the systemcomprising: means for identifying a video based at least in part on aviewing history of a first user associated with a user device; means foridentifying a first group of users; means for determining, for each userin the first group of users, an affinity score for each user with theidentified video; means for receiving a request to present a page thatincludes a representation of the video; in response to receiving therequest, means for identifying a second group of users connected to thefirst user associated with the user device, wherein the second group ofusers is a subset of the first group of users; means for determining aviewership status of each user in the second group of userscorresponding to the video, wherein the viewership status corresponds toone of a plurality of categories; means for identifying a subset ofusers in the second group of users based at least in part on theviewership status; and means for causing a plurality of groups ofindicators corresponding to the plurality of categories to be presentedon the user device, wherein each indicator in the group of indicatorsrepresents the viewership status of the user and corresponds to a userin the identified subset of users, and wherein the plurality of groupsof indicators is presented on the requested page in connection with therepresentation of the video.

In some embodiments, the plurality of categories includes users who haveendorsed the video on a social networking service.

In some embodiments, the plurality of categories includes users who aredetermined as having a likelihood of viewing the video.

In some embodiments, the means for identifying the subset of users inthe second group of users further comprise means for determining astrength of a relationship between each user in the second group ofusers and the first user associated with the user device, wherein thesubset of users in the second group of users is identified based on thestrength of the relationship.

In some embodiments, the system further comprises means for verifyingthe strength of the relationship between each user in the subset ofusers in the second group of users with the first user associated withthe user device prior to causing the plurality of groups of indicatorsto be presented.

In some embodiments, the system further comprises means for verifyingthe viewership status of each user in the subset of users in the secondgroup of users prior to causing the plurality of groups of indicators tobe presented.

In some embodiments, a first group of indicators in the plurality ofgroups of indicators has a different visual appearance than a secondgroup of indicators in the plurality of groups of indicators.

BRIEF DESCRIPTION OF THE DRAWINGS

Various objects, features, and advantages of the disclosed subjectmatter can be more fully appreciated with reference to the followingdetailed description of the disclosed subject matter when considered inconnection with the following drawings, in which like reference numeralsidentify like elements.

FIG. 1 shows an example of a user interface for indicating viewership ofa video in accordance with some embodiments of the disclosed subjectmatter.

FIG. 2 shows a schematic diagram of an illustrative system suitable forimplementation of mechanisms described herein for indicating viewershipof a video in accordance with some embodiments of the disclosed subjectmatter.

FIG. 3 shows a detailed example of hardware that can be used in a serverand/or a user device of FIG. 2 in accordance with some embodiments ofthe disclosed subject matter.

FIG. 4 shows an example of a process for indicating viewership of avideo in accordance with some embodiments of the disclosed subjectmatter.

FIG. 5 shows an example of a process for storing indications ofviewership of a video in accordance with some embodiments of thedisclosed subject matter.

FIG. 6 shows an example of a process for identifying users to beincluded in a group of indicators of viewership of a channel of mediacontent and/or a media content item.

DETAILED DESCRIPTION

In accordance with various embodiments, mechanisms (which can includemethods, systems, and media) for indicating viewership of a video areprovided.

In some embodiments, the mechanisms described herein can causeindications of viewers who have previously viewed, endorsed, shared,and/or received suggestions to view a particular video to be presentedto a first user who is browsing a list of videos. In some embodiments,the viewers can correspond to connections of the first user, such asthose who are directly connected to the first user on a socialnetworking service, belong to the same group on a social networkingservice, and/or have any other suitable connection to the first user. Insome embodiments, the indications can include a name of the viewerand/or an image representing the viewer, and the indications can bepresented in connection with an identifier of the particular video,thereby allowing the first user browsing the list of videos to quicklyidentify friends who have watched and/or endorsed the video.

In some embodiments, the indications can be presented as belonging todifferent categories. For example, in some embodiments, the categoriescan include: users that have endorsed a video, users that have receivedsuggestions to view the video, groups the first user belongs to thathave received a suggestion to view the video, users that have suggestedthat other users view the video, and/or friends that have beenidentified as likely to enjoy the video. In some such embodiments,viewer indicators can be displayed in any suitable manner that indicateswhich category the corresponding viewer belongs to. Additionally, insome embodiments, the mechanisms described herein can cause a userincluded in one category to be removed from the other categories.

In some embodiments, the mechanisms described herein can identify userscorresponding to the viewership indicators and store indications of theidentified users for later use, as shown in and described below inconnection with FIG. 6. For example, in some embodiments, the mechanismscan identify the users corresponding to the different categories ofviewership indicators for a particular video and can store the useridentifiers (e.g., in a cache on a server), and the user identifiers canthen be retrieved at a later time, for example, in response to a requestfrom a user device to present a page that includes an indication of thevideo (e.g., a list of videos that includes the video, a page thatincludes a thumbnail image associated with the video, and/or any othersuitable indication of the video). In some embodiments, the mechanismscan identify users based on interactions with content that are shared bythe users publicly. For example, in some embodiments, the mechanisms canidentify a user's interactions with content while signed in to aparticular user account. Additionally, in instances where the mechanismsdo not identify any users, the mechanisms can cause the viewershipindicators to be omitted from presentation.

Note that, although the mechanisms described herein relate to indicatingviewership of a video, in some embodiments, the mechanisms can be usedto indicate viewership of any suitable type of media content, such asaudio content (e.g., music, radio programs, audiobooks, and/or any othersuitable type of audio content), television programs, movies, livestreaming media content, electronic books, and/or any other suitabletype of media content.

Turning to FIG. 1, an example 100 of a user interface for indicatingviewership of a video is shown in accordance with some embodiments ofthe disclosed subject matter. As illustrated, user interface 100 caninclude video indicator 102 and a panel of user indicators 104.

Video indicator 102 can be related to any suitable video. For example,in some embodiments, video indicator 102 can include an icon and/ortitle of a video from a list and/or group of videos that a user isbrowsing. As a more particular example, in some embodiments, videoindicator 102 can be a thumbnail image associated with the video. Asshown in user interface 102, in some embodiments, video indicator 102can include any suitable images, icons, graphics, animations,hyperlinks, titles, and/or any other suitable content. For example, insome embodiments, video indicator 102 can include a title of the video,a creator of the video, and/or any other suitable information.

Panel 104 can indicate users who have watched the video corresponding tovideo indicator 102, users who have endorsed and/or liked the video,users who have received suggestions to watch the video, users who haverecommended the video to others, and/or users that have been identifiedas likely to enjoy the video. In some embodiments, the users indicatedin panel 104 can be connections of a first user browsing a list ofvideos. For example, in some embodiments, the indicated users can be adirect connection of the first user on a social networking service(e.g., friends of the first user, and/or any other suitable type ofdirect connection) or an indirect connection of the first user on thesocial networking service (e.g., a friend of a friend, and/or any othersuitable type of indirect connection). As another example, in someembodiments, the users indicated in panel 104 and the first userbrowsing the list of videos can belong to a group on a social networkingservice, have subscribed to a channel of media content, and/or haveindicated interest in a similar topic.

As shown in panel 104, users indicated in panel 104 can be subdividedinto different categories, each of which indicates a different type ofinterest in the video. For example, in some embodiments, the categoriescan include: users who endorsed the video (e.g., by “liking” the video,commenting on the video, and/or any other suitable type of endorsement,users who have received suggestions to view the video (e.g., by anotheruser sharing the video and/or a link to the video, and/or in any othersuitable manner), groups of users that have received suggestions to viewthe video (e.g., due to the video being posted on a page correspondingto the group, due to the video being sent to all members of the group,and/or in any other suitable manner), users who have shared the videowith other users, and users who have been identified as likely to enjoythe video. In some embodiments, each category can be grouped in anysuitable manner, as shown in user interface 100 by groups 106, 108, 110,112, and 114. In some embodiments, users who appear in one category canbe inhibited from appearing in any other category in panel 104, asdescribed below in connection with FIGS. 4 and 5. In some embodiments,any suitable visual indicator can be used to separate categories withinpanel 104, such as a line between categories, a box around eachcategory, and/or any other suitable visual indicator. Alternatively, insome embodiments, a visual indicator to separate categories within panel104 can be omitted. Note that, although five categories are shown inpanel 104 and are described herein, in some embodiments, any suitablenumber (e.g., one, two, four, ten, and/or any other suitable number) ofcategories can be included.

Users and/or groups indicated in panel 104 can be indicated with anicon, a name, and/or any other suitable information, as shown by userindicator 116 in user interface 100. For example, in some embodiments,user indicator 116 can include a name of the user. As another example,in some embodiments, user indicator 116 can include an image and/or iconrepresenting the user. Note that, in some embodiments, indicatorscorresponding to different groups can be presented in different manners.For example, in some embodiments, indicators corresponding to a group ofusers who have been identified as likely to enjoy the video can bepresented with a different color scheme (e.g., in black and white, usingtransparency, and/or any other suitable color scheme) compared toindicators corresponding to a group of users who have endorsed thevideo. In some embodiments, user indicator 116 can include any othersuitable information, such as an indication of whether the user iscurrently active on a site associated with user interface 100, an iconindicating a social networking platform from which the user sharedand/or endorsed a content item, and/or any other suitable information.Note that, in some embodiments, selection of user indicator 116 cancause any suitable action to occur. For example, in some embodiments,selection of user indicator 116 can cause a profile page associated withthe user and/or group to be presented. As another example, in someembodiments, selection of an icon indicating a social networkingplatform on which the video was shared can cause a browser windowpresenting user interface 100 to navigate to a page presenting a post inwhich the video was shared.

Note that user interface is shown as an example of a user interface forpresenting viewership indicators, and in some embodiments, theviewership indicators can be presented in any other suitable manner. Forexample, in some embodiments, user indicators can be presented withoutan indication of a category to which the corresponding user belongs. Asa more particular example, in some embodiments, user indicators frommultiple categories (e.g., friends who liked the video, friends who havetagged others to view the video, and/or any other categories) can bepresented within panel 104 without text indicating each group.

Turning to FIG. 2, an example 200 of hardware for indicating viewershipof a video that can be used in accordance with some embodiments of thedisclosed subject matter is shown. As illustrated, hardware 200 caninclude one or more servers such as a data server 202, a communicationnetwork 204, and/or one or more user devices 206, such as user devices208 and 210.

In some embodiments, data server 202 can be any suitable server forstoring information relating to users who have viewed a video, users whohave endorsed a video, users who have tagged a connection to view avideo, and/or any other suitable information. In some embodiments, dataserver 202 can use the stored information to create indications of userswho have viewed, endorsed, and/or recommended a particular video. Forexample, in some embodiments, the indications can be presented to afirst user, for example, if the first user is browsing a list of videos.In some such embodiments, the users who have viewed, endorsed, and/orrecommended the particular video can be friends of the first user. Insome embodiments, data server 202 can additionally maintain any suitablelists and/or graphs of relationships between users that can be used tocreate the indications of users who have viewed, endorsed, and/orrecommended the video. In some embodiments, data server 202 can identifyusers corresponding to the viewership indicators at a first time and canstore indications of the identified users for presentation at anysuitable later time, as shown in and described below in connection withFIG. 6. In some embodiments, data server 202 can be omitted.

Communication network 204 can be any suitable combination of one or morewired and/or wireless networks in some embodiments. For example,communication network 206 can include any one or more of the Internet,an intranet, a wide-area network (WAN), a local-area network (LAN), awireless network, a digital subscriber line (DSL) network, a frame relaynetwork, an asynchronous transfer mode (ATM) network, a virtual privatenetwork (VPN), and/or any other suitable communication network. Userdevices 206 can be connected by one or more communications links 212 tocommunication network 204 that can be linked via one or morecommunications links (e.g., communications link 214) to data server 202.Communications links 212 and/or 214 can be any communications linkssuitable for communicating data among user devices 206 and server 202such as network links, dial-up links, wireless links, hard-wired links,any other suitable communications links, or any suitable combination ofsuch links.

In some embodiments, user devices 206 can include one or more computingdevices suitable for browsing a listing of videos, viewing a video,recommending a video, endorsing a video, suggesting a video to anotheruser, and/or any other suitable functions. For example, in someembodiments, user devices 206 can be implemented as a mobile device,such as a smartphone, mobile phone, a tablet computer, a laptopcomputer, a vehicle (e.g., a car, a boat, an airplane, or any othersuitable vehicle) entertainment system, a portable media player, and/orany other suitable mobile device. As another example, in someembodiments, user devices 206 can be implemented as a non-mobile devicesuch as a desktop computer, a set-top box, a television, a streamingmedia player, a game console, and/or any other suitable non-mobiledevice.

Although data server 202 is illustrated as a single device, thefunctions performed by data server 202 can be performed using anysuitable number of devices in some embodiments. For example, in someembodiments, the functions performed by data server 202 can be performedon a single server. As another example, in some embodiments, multipledevices can be used to implement the functions performed by data server202.

Although two user devices 208 and 210 are shown in FIG. 2, any suitablenumber of user devices, and/or any suitable types of user devices, canbe used in some embodiments.

Data server 202 and user devices 206 can be implemented using anysuitable hardware in some embodiments. For example, in some embodiments,devices 202 and 206 can be implemented using any suitable generalpurpose computer or special purpose computer. For example, a server maybe implemented using a special purpose computer. Any such generalpurpose computer or special purpose computer can include any suitablehardware. For example, as illustrated in example hardware 300 of FIG. 3,such hardware can include hardware processor 302, memory and/or storage304, an input device controller 306, an input device 308, display/audiodrivers 310, display and audio output circuitry 312, communicationinterface(s) 314, an antenna 316, and a bus 318.

Hardware processor 302 can include any suitable hardware processor, suchas a microprocessor, a micro-controller, digital signal processor(s),dedicated logic, and/or any other suitable circuitry for controlling thefunctioning of a general purpose computer or a special purpose computerin some embodiments. In some embodiments, hardware processor 302 can becontrolled by a server program stored in memory and/or storage 304 of aserver (e.g., such as server 202). For example, the server program cancause hardware processor 302 to store indications of users who haveviewed, endorsed, and/or recommended a video, present an indication ofconnections of a user who have viewed, endorsed, and/or recommended thevideo, and/or perform any other suitable actions. In some embodiments,hardware processor 302 can be controlled by a computer program stored inmemory and/or storage 304 of user device 206. For example, the computerprogram can cause hardware processor 302 to present indications of userswho have viewed, endorsed, and/or recommended a video, and/or performany other suitable actions.

Memory and/or storage 304 can be any suitable memory and/or storage forstoring programs, data, media content, advertisements, and/or any othersuitable information in some embodiments. For example, memory and/orstorage 304 can include random access memory, read-only memory, flashmemory, hard disk storage, optical media, and/or any other suitablememory.

Input device controller 306 can be any suitable circuitry forcontrolling and receiving input from one or more input devices 308 insome embodiments. For example, input device controller 306 can becircuitry for receiving input from a touchscreen, from a keyboard, froma mouse, from one or more buttons, from a voice recognition circuit,from a microphone, from a camera, from an optical sensor, from anaccelerometer, from a temperature sensor, from a near field sensor,and/or any other type of input device.

Display/audio drivers 310 can be any suitable circuitry for controllingand driving output to one or more display/audio output devices 312 insome embodiments. For example, display/audio drivers 310 can becircuitry for driving a touchscreen, a flat-panel display, a cathode raytube display, a projector, a speaker or speakers, and/or any othersuitable display and/or presentation devices.

Communication interface(s) 314 can be any suitable circuitry forinterfacing with one or more communication networks, such as network 204as shown in FIG. 2. For example, interface(s) 314 can include networkinterface card circuitry, wireless communication circuitry, and/or anyother suitable type of communication network circuitry.

Antenna 316 can be any suitable one or more antennas for wirelesslycommunicating with a communication network (e.g., communication network204) in some embodiments. In some embodiments, antenna 316 can beomitted.

Bus 318 can be any suitable mechanism for communicating between two ormore components 302, 304, 306, 310, and 314 in some embodiments.

Any other suitable components can be included in hardware 300 inaccordance with some embodiments.

Turning to FIG. 4, an example 400 of a process for indicating viewershipof a video is shown in accordance with some embodiments of the disclosedsubject matter. In some embodiments, blocks of process 400 can beexecuted on data server 202 and/or user device 206.

Process 400 can begin by receiving an indication that viewershipinformation is to be provided to a user at 402. Process 400 can receivethe indication in response to any action and/or information. Forexample, in some embodiments, process 400 can receive the indication inresponse to determining that a particular page is to be presented. As amore particular example, in some embodiments, the particular page cancorrespond to a home page of a video sharing service, a home pagecorresponding to a user account associated with the user for a videosharing service, a page associated with a particular channel of mediacontent on a video sharing service, and/or any other suitable type ofpage. As another example, in some embodiments, process 400 can receivethe indication in response to determining that a first user is browsinga listing of videos, and can determine that information about aparticular video in the listing is to be provided (e.g., by determiningthat the user has selected the particular video, by determining that acursor is hovering over an icon associated with the particular video,and/or based on any other suitable information). As described above inconnection with FIG. 1, in some embodiments, the viewers of the videocan be restricted to direct and/or indirect connections (e.g., on asocial networking service) of the first user.

Process 400 can identify connections (direct and/or indirect) of theuser who have endorsed the video at 404. For example, in someembodiments, process 400 can identify connections of the user who haveindicated that they watched and liked the video, and/or endorsed thevideo in any other suitable manner. Process 400 can use any suitabletechnique or combination of techniques to identify the connections ofthe user. For example, in some embodiments, process 400 can query adatabase (e.g., on data server 202) for users who have both endorsed thevideo and are connected to the first user. In some such embodiments,process 400 can specify any suitable level of connection. For example,in some embodiments, process 400 can identify only users who aredirectly connected to the first user, users who are connected by lessthan a predetermined degree of separation, and/or based on any othersuitable criteria. Alternatively, in some embodiments, process 400 canidentify users who belong to a particular group with the first userand/or who have subscribed to a channel of a media content with thefirst user. Note that, in some embodiments, the connections identifiedat block 404 can correspond to the users displayed in category 106 asshown in and described above in connection with FIG. 1. A moreparticular example of a process for identifying connections of the userwho have endorsed the video is shown in and described below inconnection with FIG. 6.

Note that, in some embodiments, process 400 can additionally oralternatively identify groups that have endorsed the channel of mediacontent or the video. For example, in some embodiments, the groups caninclude a group on a social networking service, channels of mediacontent available on a video sharing service, and/or any other suitabletype of group(s).

Process 400 can identify connections of the first user who have receivedsuggestions to view the video at 406. In some embodiments, theidentified users can be those who have received a message with a link tothe video, users who have had the video posted on a profile page on asocial networking service by another user, and/or received a suggestionto view the video in any other suitable manner. As described above, theidentified users can be connected to the first user directly orindirectly in any suitable manner. Similarly to at block 404, the userscan be identified using any suitable techniques, for example, byquerying a database. Note that, in some embodiments, the connectionsidentified at block 406 can correspond to the users displayed incategory 108 as shown in and described above in connection with FIG. 1.

Process 400 can identify groups that have received suggestions to viewthe video at 408. In some embodiments, the identified groups can be onesthat the first user belongs to. For example, in some embodiments, thegroups can include those that the user has joined on a social networkingservice, groups that correspond to users who have subscribed to aparticular channel of media content, and/or any other suitable groups.Similarly to at blocks 404 and 406, the groups can be identified usingany suitable techniques, for example, by querying a database. Note that,in some embodiments, the groups identified at block 408 can correspondto the group(s) displayed in category 110 as shown in and describedabove in connection with FIG. 1.

Process 400 can identify connections of the first user who have sharedthe video with other users at 410. For example, in some embodiments, theidentified connections can include those who have sent a message toanother user that includes the video and/or a link to the video, thosewho have posted the video and/or a link to the video on a pageassociated with another user, and/or those who have shared the video inany other suitable manner. Similarly to at blocks 404-408, the users canbe identified using any suitable techniques, for example, by querying adatabase. Note that, in some embodiments, the users identified at block410 can correspond to the users displayed in category 112 as shown inand described above in connection with FIG. 1.

Process 400 can identify connections of the first user who are likely toenjoy the video at 412 based on any suitable information. For example,in some embodiments, process 400 can identify users connected to thefirst user who have endorsed similar videos. As a more particularexample, if the video relates to a particular topic, process 400 canidentify connections of the user who have previously endorsed videosrelated to the topic. As another example, in some embodiments, process400 can identify users connected to the first user who are interested ina topic associated with the video. In some such embodiments, the userscan be identified based on collections of video content the user hassubscribed to and/or otherwise endorsed, interests indicated on a socialnetworking service, and/or using any other suitable information. As yetanother example, in some embodiments, process 400 can identify usersconnected to the first user who have endorsed videos determined to besimilar to videos viewed by the first user. In some such embodiments,similarity can be determined using any suitable information, such asmetadata indicating topics of the videos, creators of the videos, and/orany other suitable information. Note that, in some embodiments, theusers identified at block 412 can correspond to the users displayed incategory 114 as shown in and described above in connection with FIG. 1.

Process 400 can create one or more groups of indicators relating to theconnections and groups identified in blocks 404-412 at 414. For example,as shown in and described above in connection with FIG. 1, the group ofindicators can include those presented in panel 104 of user interface100. As shown in and described above in connection with FIG. 1, eachgroup of indicators can correspond to a category (e.g., users that haveendorsed content, users that have tagged another user to view content,users determined to be likely to enjoy the content, and/or any othersuitable categories, as described above). Additionally, each group ofindicators can include any suitable number of user indicators, as shownin panel 104 of FIG. 1. Similarly to user indicator 116 in FIG. 1, eachindicator can include a name of the user and/or group, an icon and/orimage representing the user and/or group, and/or any other suitableinformation. Note that, in some embodiments, any suitable number ofindicators can be created. For example, in some embodiments, anindicator corresponding to each identified connection and/or group canbe created. Additionally or alternatively, in some embodiments,indicators corresponding to a subset of the identified connectionsand/or groups can be created. In some such embodiments, process 400 canidentify any suitable subset. For example, in some embodiments, process400 can identify users and/or groups based on a level of interactionwith the first user (e.g., users and/or groups the first user has mostrecently interacted with, users and/or groups the first user hasinteracted with the most number of times, and/or any other suitablemetric), and/or based on any other suitable criteria. In someembodiments, each category represented in panel 104 can include adifferent number of user indicators, and any suitable number ofindicators can be included in each category.

Note that, in some embodiments, process 400 can deduplicate usersrepresented in multiple categories. For example, if a particular userhas both endorsed the video and has shared the video with other users,process 400 can remove the user from one of the two categories. In someembodiments, inclusion in categories can be ranked and/or ordered. Forexample, in some embodiments, the ordering of categories can be: userswho have endorsed a video, users who have received suggestions to viewthe video, groups which have received suggestions to view the video,users who have shared the video with others, and users who have beenidentified as likely to enjoy the video. In some embodiments, users thatcan belong to more than one category can be placed in thehighest-ranking category and removed from all other categories. Aprocess for modifying a category that a user belongs to is shown in anddescribed below in connection with FIG. 5.

Process 400 can cause the group of indicators to be presented on a userdevice associated with the first user at 416. For example, as shown inand described above in connection with FIG. 1, process 400 can cause thegroup of indicators to be presented in connection with an indicator(e.g., a thumbnail image associated with the video, and/or any othersuitable indicator) of the video. As another example, in someembodiments, the groups of indicators can be grouped into multiplecategories, as shown in panel 104 of FIG. 1.

Turning to FIG. 5, an example 500 of a process for storing indicationsof viewership of a video is shown in accordance with some embodiments ofthe disclosed subject matter. Note that although process 500 describesstoring indications of users sharing a video and endorsing a video, thetechniques described below can be applied to any suitable actions. Insome embodiments, blocks of process 500 can be executed by data server202.

Process 500 can begin by receiving an indication that a first user hasrecommended that a second user watch a video at 502. As described abovein connection with FIGS. 1 and 4, the first user and the second user canbe connected in any suitable manner (e.g., a direct connection on asocial networking service, an indirect connection on a social networkingservice, both belong to a particular group on a social networkingservice, both have subscribed to media content associated with aparticular channel, and/or any other suitable type of connection). Therecommendation can be made in any suitable manner. For example, in someembodiments, the first user can send the second user a message thatincludes a link to the video.

Process 500 can store an indication that the first user recommendedand/or shared the video at 504. In some embodiments, the indication canbe stored in any suitable location (e.g., in memory 304 of data server202) and using any suitable techniques. For example, in someembodiments, the indication can be stored in a database with anidentifier associated with the first user as a key. In some embodiments,the stored indication can cause the first user to be identified byprocess 400 at block 410 (e.g., to identify users that have shared avideo with other users).

Process 500 can store an indication that the second user has received asuggestion to view the video at 506. Similarly to at block 504, theindication can be stored in any suitable location using any suitabletechniques, such as in a database in data server 202. In someembodiments, the stored indication can cause the second user to beidentified by process 400 at block 406 (e.g., to identify users thathave received a suggestion to view the video).

Process 500 can receive an indication that the second user has endorsedthe video at 508. For example, in some embodiments, process 500 canreceive information indicating that the second user selected a linkassociated with the video and, after presentation of the video,indicated that they enjoyed the video (e.g., by selecting an iconindicating that they liked the video) and/or endorsed the video in anysuitable manner.

Process 500 can store an indication that the second user endorsed thevideo at 510. Similarly to blocks 504 and 506, the indication can bestored in any suitable location using any suitable techniques, such asin a database in data server 202. In some embodiments, the storedindication can cause the second user to be identified by process 400 atblock 404 (e.g., to identify users that have endorsed the video).Process 500 can additionally remove the indication stored at block 506that indicates that the second user received the suggestion to view thevideo in any suitable manner. For example, in some embodiments, process500 can change a flag setting associated with the second user thatindicates whether the second user received a suggestion to view thevideo.

Note that, in some embodiments, process 500 can store indications for aparticular user to ensure that only a predetermined number ofindications have been stored for that user. For example, in someembodiments, if an indication that a user has endorsed a particularvideo has been stored, process 500 can remove indications that the userwas likely to enjoy the video, that the user received a suggestion toview the video, and/or any other suitable indications. In someembodiments, process 500 can prioritize indications in any suitableorder, for example, by prioritizing an indication that the user endorsedthe video over an indication that the user received a suggestion to viewthe video, that the user is likely to enjoy the video, and/or that theuser suggested the video to another user. In some embodiments, removingand/or deleting multiple indications can be used to deduplicatecategories of video viewership to ensure that a particular user isincluded in only one category. Additionally, note that in someembodiments, process 500 can store an indication that a user hasdisliked a video. In some such embodiments, process 500 can then removeany other indications related to the user and the video and can causethe user to not appear in a group of indicators of viewership.Furthermore, in some embodiments, process 500 can receive an indicationthat a user that has been tagged to view a video has removed the tag(e.g., by deleting their name from the tag, deleting a comment or postin which they were tagged, and/or in any other suitable manner), and inresponse, process 500 can remove and/or delete a stored indication thatthe user was tagged to view the video.

Turning to FIG. 6, an example 600 of a process for identifying, for aparticular channel of media content and/or a particular video, a groupof users to be included in a group of indicators of viewership of theparticular channel of media content and/or video is shown in accordancewith some embodiments of the disclosed subject matter.

Process 600 can begin by identifying a particular channel of mediacontent and/or a particular video at 602 for which indicators ofviewership are to be presented. Process 600 can identify the channel ofmedia content and/or the video using any suitable technique(s) and basedon any suitable information. For example, in some embodiments, thechannel of media content and/or the video can be one included in a videoservice home page presented to a particular user authenticated with acorresponding user account. As a more particular example, in someembodiments, the channel of media content can include a channel that theuser has subscribed to, a channel that is recommended for the user basedon interests the user has indicated (e.g., in one or more posts on asocial networking site, a profile associated with the user, and/orindicated in any other suitable manner), and/or any other suitablechannels. As another more particular example, in some embodiments, theparticular video can be one that is recommended for the user based onpreviously endorsed content, a video that has been determined to be acurrently popular video (e.g., has received more than a predeterminednumber of views within a recent time period, and/or identified using anyother suitable popularity metrics), and/or any other suitable video.

Process 600 can identify a first group of users at 604. The first groupof users can include any suitable users, such as those that areassociated with user accounts on a particular video sharing service,those that are associated with user accounts on a particular socialnetworking service, and/or any other suitable users. In someembodiments, consent can be requested from users to be included in thefirst group of users, for example, as part of settings associated with auser account.

At 606, for each user in the first group of users, process 600 candetermine an affinity score for the user and the channel of mediacontent and/or the video. Process 600 can determine the affinity scorebased on any suitable information and using any suitable technique(s).For example, in some embodiments, the affinity score can be based onwhether the user has viewed content produced by the channel of mediacontent, has endorsed (e.g., indicated that they enjoyed) contentproduced by the channel of media content, has endorsed the video, hasshared content produced by the channel of media content (e.g., in asocial networking post), has shared the video (e.g., in a socialnetworking post), has subscribed to the channel of media content, hascommented on the video, and/or has interacted with the channel of mediacontent or the video in any other suitable manner. In instances wherethe user has interacted with the channel of media content or the videoin multiple instances (e.g., commented on the video and endorsed thevideo), process 600 can weigh the interactions in any suitable manner tocalculate the affinity score based on the multiple interactions. Forexample, in some embodiments, endorsements can be weighed more heavilythan viewing content, sharing content can be weighed more heavily thancommenting on content, etc. Note that, in some embodiments, multipleaffinity scores can be calculated for each of multiple types ofinteraction, and, in some such embodiments, each affinity score can be aBoolean value. For example, in some embodiments, an affinity scoreindicating whether the user has endorsed content associated with thechannel of media content or the video can be a Boolean value, where avalue of “true” indicates that the user has endorsed the content and avalue of “false” indicates that the user has not endorsed the content.Process 600 can store the affinity score(s) in any suitable location,for example, in memory 304 of data server 202. As a more particularexample, in some embodiments, the affinity score(s) can be stored in acache within memory 304 of data server 202. In some such embodiments,the affinity score(s) can be stored in the cache for any suitable timeperiod (e.g., a day, a week, a month, and/or any other suitable timeperiod).

Note that, in some embodiments, blocks 602-606 can be repeated formultiple channels of media content and/or videos, and the affinityscores for the multiple channels or videos and groups of users can bestored for later use, for example, on data server 202.

At 608, process 600 can receive a request to present, to a user of auser device, groups of viewership indicators corresponding to thechannel of media content or the video. Process 600 can receive therequest based on any suitable action(s). For example, in someembodiments, process 600 can receive the request in response to adetermination that the user has navigated to a particular page on theuser device. As a more particular example, the page can include a homepage corresponding to a user account of the user on a video sharingservice or social networking service, a page corresponding to aparticular channel of media content or a particular video (e.g., thechannel of media content or the video described above in connection withblock 602), and/or any other suitable page. Note that, in someembodiments, process 600 may not receive a request to present the groupof viewership indicators. In some such embodiments, process 600 mayidentify the groups of viewership indicators and may store theidentified groups of viewership indicators to be presented to the userat a later time.

Process 600 can identify a second group of users connected to the userof the user device at 610. As described above in connection with FIGS. 4and 5, each user in the second group of users can be connected to theuser of the user device directly or indirectly. For example, in someembodiments, users who are directly connected may be direct connectionson any suitable social networking service, have directly exchangedmessages through any suitable communication interface (e.g., an instantmessaging interface, e-mail, and/or any other suitable communicationinterface), and/or be directly connected in any other suitable manner.As another example, users who are indirectly connected may both belongto the same group on a social networking service, both be subscribed tothe same channel of media content on a video sharing service, have adirect connection in common with both users, and/or be indirectlyconnected in any other suitable manner. Process 600 can identify thesecond group of users connected to the user of the user device using anysuitable technique or combination of techniques. For example, in someembodiments, process 600 can identify direct connections of the user onmultiple networking platforms (e.g., one or more communicationinterfaces, social networking services, video sharing services, and/orany other suitable networking platforms). As another example, in someembodiments, process 600 can identify indirect connections and/orsuggested connections by identifying groups the user of the user devicebelongs to, connections separated from the user of the user device byany suitable degree on a networking platform, and/or based on any othersuitable information.

Process 600 can determine a viewership status corresponding to thechannel of media content or the video for each user in the second groupof users at 612. In some embodiments, the viewership status can indicatethat the user belongs to a particular category. For example, in someembodiments, the categories can include users that have endorsed thechannel of media content or video, users that have not watched contentfrom the channel of media content or have not watched the video but arelikely to enjoy the content, and users that do not belong to either ofthe previous categories. Alternatively, in some embodiments, theviewership status can include any other suitable categories, such asusers that have been tagged by another user to view the content, usersthat have viewed the content but not endorsed the content, users thathave shared the content on a social networking service, and/or any othersuitable categories. In some embodiments, the categories can correspondto those shown in and described above in connection with panel 104 ofFIG. 1 and blocks 404-412 of FIG. 4. Note that, in some embodiments, theviewership status of a particular user corresponding to a particularchannel of media content or particular video can be determined based onthe user's interactions with the content that are publically available.For example, in some embodiments, process 600 can determine theviewership status for each user and content combination based oninteractions that occurred with the content while the user was signed into a user account. In some embodiments, permission can be requested fromthe user to store and/or use any information relating to the user'sinteractions with content.

At 614, process 600 can identify a subset of the second group of userswho are to be included in the group of viewership indicators based onthe viewership status determined at block 612. Process 600 can identifythe subset using any suitable techniques. For example, in someembodiments, process 600 can first determine a number of categories ofviewership indicators to be presented (e.g., as shown in and describedabove in connection with FIG. 1), and can then identify a subset ofusers corresponding to each of the categories. As a more particularexample, in instances where process 600 determines that the categoriesare to include users who have endorsed the channel of media content orthe video and users that would likely enjoy the channel of media contentor video, process 600 can then identify, based on the viewership status,users corresponding to each of the two categories. In some embodiments,process 600 can identify any suitable number (e.g., one, two, five, ten,twenty, and/or any other suitable number) of users in each category. Ininstances where more users belong to each category than are to beindicated in the group of viewership indicators, process 600 can selectthe users in the subset based on any suitable criteria. For example, insome embodiments, process 600 can select the users in the subset basedon an affinity score and/or a score indicating a strength of arelationship between the user in the subset of users and the user to bepresented with the viewership indicators. For example, in someembodiments, process 600 can sort the users in the subset based on thestrength of their relationship with the user to be presented with theviewership indicators, and can select the top N (e.g., one, two, five,ten, twenty, and/or any other suitable number) users in each category.In some embodiments, process 600 can use any suitable information and/ortechnique(s) to determine a strength of the relationship, for example, anumber of interactions between the two users (e.g., number of messagessent, number of comments on posts on a social networking service, and/orany other suitable communication), a frequency of interaction, and/orany other suitable metric.

In some embodiments, process 600 can cause the group of viewershipindicators to be presented (e.g., as described above in connection withFIGS. 1 and 4) based on the identified subset of the second group ofusers. Additionally or alternatively, in some embodiments, process 600can store the identified subset of users for presentation on the userdevice at a later time. For example, in some embodiments, the subset ofusers can be identified and stored in a cache in memory 304 of dataserver 202, and process 600 can cause the corresponding viewershipindicators to be presented at a later time, for example, in response toa request from the user device (e.g., a request for a particular page,and/or any other suitable request).

In instances where process 600 stored the identified subset of users,process 600 can verify the viewership status of each user in the subsetof users and the connection status of each user in the subset of usersto a user of the user device at 616. For example, in some embodiments,process 600 can verify that users who were identified as having endorsedthe channel of media content and/or the video have not retracted and/ormodified their endorsement in the time since they were identified. Asanother example, in some embodiments, process 600 can verify that userswho were identified as likely to enjoy the video have not viewed thevideo in the time since they were identified. As yet another example, insome embodiments, process 600 can verify that users who were identifiedas a direct connection of the user of the user device have not modifiedtheir connection status (e.g., retracted a friendship status on a socialnetworking service, and/or modified a connection status in any othersuitable manner) in the time since they were identified.

In some embodiments, process 600 can loop back to block 602 and canidentify a second channel of media content or a second video. Forexample, in some embodiments, process 600 can loop through a list ofchannels and/or videos for which viewership indicators are to becreated, and can store information relating to the viewership indicators(e.g., as described in blocks 606 and 612). The stored information canthen be retrieved at any suitable later time, for example, in responseto receiving a request to present a page on which the viewershipindicators are to be presented.

In some embodiments, at least some of the above described blocks of theprocesses of FIGS. 4, 5, and 6 can be executed or performed in any orderor sequence not limited to the order and sequence shown in and describedin connection with the figures. Also, some of the above blocks of FIGS.4, 5, and 6 can be executed or performed substantially simultaneouslywhere appropriate or in parallel to reduce latency and processing times.Additionally or alternatively, some of the above described blocks of theprocesses of FIGS. 4, 5, and 6 can be omitted.

In some embodiments, any suitable computer readable media can be usedfor storing instructions for performing the functions and/or processesherein. For example, in some embodiments, computer readable media can betransitory or non-transitory. For example, non-transitory computerreadable media can include media such as magnetic media (such as harddisks, floppy disks, and/or any other suitable magnetic media), opticalmedia (such as compact discs, digital video discs, Blu-ray discs, and/orany other suitable optical media), semiconductor media (such as flashmemory, electrically programmable read-only memory (EPROM), electricallyerasable programmable read-only memory (EEPROM), and/or any othersuitable semiconductor media), any suitable media that is not fleetingor devoid of any semblance of permanence during transmission, and/or anysuitable tangible media. As another example, transitory computerreadable media can include signals on networks, in wires, conductors,optical fibers, circuits, any suitable media that is fleeting and devoidof any semblance of permanence during transmission, and/or any suitableintangible media.

In situations in which the systems described herein collect personalinformation about users, or make use of personal information, the usersmay be provided with an opportunity to control whether programs orfeatures collect user information (e.g., information about a user'ssocial network, social actions or activities, profession, a user'spreferences, or a user's current location). In addition, certain datamay be treated in one or more ways before it is stored or used, so thatpersonal information is removed. For example, a user's identity may betreated so that no personal information can be determined for the user,or a user's geographic location may be generalized where locationinformation is obtained (such as to a city, ZIP code, or state level),so that a particular location of a user cannot be determined. Thus, theuser may have control over how information is collected about the userand used by a content server.

Accordingly, methods, systems, and media for indicating viewership of avideo are provided.

Although the invention has been described and illustrated in theforegoing illustrative embodiments, it is understood that the presentdisclosure has been made only by way of example, and that numerouschanges in the details of implementation of the invention can be madewithout departing from the spirit and scope of the invention, which islimited only by the claims that follow. Features of the disclosedembodiments can be combined and rearranged in various ways.

What is claimed is:
 1. A method for indicating viewership of a video, comprising: identifying a video based at least in part on a viewing history of a first user associated with a user device; identifying a first group of users; determining, for each user in the first group of users, an affinity score for each user with the identified video; receiving a request to present a page that includes a representation of the video; in response to receiving the request, identifying a second group of users connected to the first user associated with the user device, wherein the second group of users is a subset of the first group of users; determining a viewership status of each user in the second group of users corresponding to the video, wherein the viewership status corresponds to one of a plurality of categories, and wherein each category in the plurality of categories indicates a level of engagement with the video; identifying a subset of users in the second group of users based at least in part on the viewership status; and causing a plurality of groups of indicators corresponding to the plurality of categories to be presented on the user device, wherein each indicator in the group of indicators identifies a user in the identified subset of users, represents the viewership status of the user, and corresponds to a user in the identified subset of users, and wherein the plurality of groups of indicators is presented on the requested page in connection with the representation of the video.
 2. The method of claim 1, wherein the plurality of categories includes users who have endorsed the video on a social networking service.
 3. The method of claim 1, wherein the plurality of categories includes users who are determined as having a likelihood of viewing the video.
 4. The method of claim 1, wherein identifying the subset of users in the second group of users further comprises determining a strength of a relationship between each user in the second group of users and the first user associated with the user device, wherein the subset of users in the second group of users is identified based on the strength of the relationship.
 5. The method of claim 4, further comprising verifying the strength of the relationship between each user in the subset of users in the second group of users with the first user associated with the user device prior to causing the plurality of groups of indicators to be presented.
 6. The method of claim 1, further comprising verifying the viewership status of each user in the subset of users in the second group of users prior to causing the plurality of groups of indicators to be presented.
 7. The method of claim 1, wherein a first group of indicators in the plurality of groups of indicators has a different visual appearance than a second group of indicators in the plurality of groups of indicators.
 8. A system for indicating viewership of a video, the system comprising: a memory; and a hardware processor that, when executing computer executable instruction stored in the memory, is programmed to: identify a video based at least in part on a viewing history of a first user associated with a user device; identify a first group of users; determine, for each user in the first group of users, an affinity score for each user with the identified video; receive a request to present a page that includes a representation of the video; in response to receiving the request, identify a second group of users connected to the first user associated with the user device, wherein the second group of users is a subset of the first group of users; determine a viewership status of each user in the second group of users corresponding to the video, wherein the viewership status corresponds to one of a plurality of categories, and wherein each category in the plurality of categories indicates a level of engagement with the video; identify a subset of users in the second group of users based at least in part on the viewership status; and cause a plurality of groups of indicators corresponding to the plurality of categories to be presented on the user device, wherein each indicator in the group of indicators identifies a user in the identified subset of users, represents the viewership status of the user, and corresponds to a user in the identified subset of users, and wherein the plurality of groups of indicators is presented on the requested page in connection with the representation of the video.
 9. The system of claim 8, wherein the plurality of categories includes users who have endorsed the video on a social networking service.
 10. The system of claim 8, wherein the plurality of categories includes users who are determined as having a likelihood of viewing the video.
 11. The system of claim 8, wherein the hardware processor is further programmed to determine a strength of a relationship between each user in the second group of users and the first user associated with the user device, wherein the subset of users in the second group of users is identified based on the strength of the relationship.
 12. The system of claim 11, wherein the hardware processor is further programmed to verify the strength of the relationship between each user in the subset of users in the second group of users with the first user associated with the user device prior to causing the plurality of groups of indicators to be presented.
 13. The system of claim 8, wherein the hardware processor is further programmed to verify the viewership status of each user in the subset of users in the second group of users prior to causing the plurality of groups of indicators to be presented.
 14. The system of claim 8, wherein a first group of indicators in the plurality of groups of indicators has a different visual appearance than a second group of indicators in the plurality of groups of indicators.
 15. A non-transitory computer-readable medium containing computer executable instructions that, when executed by a processor, cause the processor to perform a method for indicating viewership of a video, comprising: identifying a video based at least in part on a viewing history of a first user associated with a user device; identifying a first group of users; determining, for each user in the first group of users, an affinity score for each user with the identified video; receiving a request to present a page that includes a representation of the video; in response to receiving the request, identifying a second group of users connected to the first user associated with the user device, wherein the second group of users is a subset of the first group of users; determining a viewership status of each user in the second group of users corresponding to the video, wherein the viewership status corresponds to one of a plurality of categories, and wherein each category in the plurality of categories indicates a level of engagement with the video; identifying a subset of users in the second group of users based at least in part on the viewership status; and causing a plurality of groups of indicators corresponding to the plurality of categories to be presented on the user device, wherein each indicator in the group of indicators identifies a user in the identified subset of users, represents the viewership status of the user, and corresponds to a user in the identified subset of users, and wherein the plurality of groups of indicators is presented on the requested page in connection with the representation of the video.
 16. The non-transitory computer-readable medium of claim 15, wherein the plurality of categories includes users who have endorsed the video on a social networking service.
 17. The non-transitory computer-readable medium of claim 15, wherein the plurality of categories includes users who are determined as having a likelihood of viewing the video.
 18. The non-transitory computer-readable medium of claim 15, wherein identifying the subset of users in the second group of users further comprises determining a strength of a relationship between each user in the second group of users and the first user associated with the user device, wherein the subset of users in the second group of users is identified based on the strength of the relationship.
 19. The non-transitory computer-readable medium of claim 18, wherein the method further comprises verifying the strength of the relationship between each user in the subset of users in the second group of users with the first user associated with the user device prior to causing the plurality of groups of indicators to be presented.
 20. The non-transitory computer-readable medium of claim 15, wherein the method further comprises verifying the viewership status of each user in the subset of users in the second group of users prior to causing the plurality of groups of indicators to be presented.
 21. The non-transitory computer-readable medium of claim 15, wherein a first group of indicators in the plurality of groups of indicators has a different visual appearance than a second group of indicators in the plurality of groups of indicators. 